package com.demo.test.other;

import android.app.Activity;

import androidx.appcompat.app.AppCompatActivity;


/**
 正常页面，没有内存泄露
 但是本页中的静态变量activity，一旦被赋值，如：
 activity=ActivityLeak2的实例，
 那么ActivityLeak2的实例就会一直被引用，即使ActivityLeak2已经退出。
 除非activity=null或者其它，ActivityLeak2才能取消被引用。



 退出页面后，本页不会发生泄露
 **/
public class ActivityTemp extends AppCompatActivity {

    public static Activity activity;

//    @Override
//    protected void onCreate(Bundle savedInstanceState) {
//        super.onCreate(savedInstanceState);
//        setContentView(R.layout.activity_main_test_leak);
//
//        initView();
//    }
//
//    private void initView() {
////        Button btnOne=findViewById(R.id.btn_one);
////        btnOne.setOnClickListener(new View.OnClickListener() {
////            @Override
////            public void onClick(View view) {
////                Intent intent=new Intent(ActivityLeak3.this, ActivityLeak1.class);
////                startActivity(intent);
////            }
////        });
//        Button btnTwo=findViewById(R.id.btn_two);
//        btnTwo.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                Intent intent=new Intent(ActivityLeak3.this, ActivityLeak2.class);
//                startActivity(intent);
//            }
//        });
//        Button btnThree=findViewById(R.id.btn_three);
//        btnThree.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                Intent intent=new Intent(ActivityLeak3.this, ActivityNormal.class);
//                startActivity(intent);
//            }
//        });
//
//        Button btn4=findViewById(R.id.btn_4);
////        btn4.setOnClickListener(new View.OnClickListener() {
////            @Override
////            public void onClick(View view) {
////                UseAppPermissionRequester.instance
////                        .onGranted {
////                    Log.d("xx","xxxx");}
////            .onDenied { finish() }
////            .request(this)
////            }
////        });
//
//
//    }


//    @Override
//    protected void finalize() throws Throwable {
//        super.finalize();
//        LogPrint.e(Tags.gc,this.getLocalClassName()+"  finalize");
//    }
}
